package com.skivingcloud.report.service;

import com.fasterxml.jackson.core.JsonProcessingException;
import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.service.IService;
import com.skivingcloud.report.dto.DataSetDto;
import com.skivingcloud.report.dto.OriginalDataDto;
import com.skivingcloud.report.entity.ReportDataSetTransform;
import com.skivingcloud.common.utils.PageParameter;

/**
 * 数据集数据转换 服务层。
 *
 * @author skivingcloud
 * @since 2024-09-12
 */
public interface ReportDataSetTransformService extends IService<ReportDataSetTransform> {
    /**
     * 分页查询数据集数据转换
     *
     * @param parameter 查询参数
     * @return 分页查询结果
     */
    Page<ReportDataSetTransform> queryByPage(PageParameter<ReportDataSetTransform> parameter);

    /**
     * 测试 数据转换是否正确
     * @param param 参数
     * @return 测试数据
     */
    OriginalDataDto testTransform(DataSetDto param) throws JsonProcessingException;
}
